package com.platform.modules.cpt.service;

import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.platform.modules.cpt.dto.ProjectInofDto;
import com.platform.modules.cpt.entity.CptAcceptanceEntity;
import com.platform.modules.cpt.entity.CptAcceptanceReportEntity;
import com.platform.modules.cpt.entity.CptAcceptanceReportQualityEntity;
import com.platform.modules.cpt.entity.CptAcceptanceSuperviseTeamEntity;
import com.platform.modules.prj.entity.PrjProjectEntity;


public interface CptAcceptanceReportService extends IService<CptAcceptanceReportEntity> {

	/**
	 * @descr 分页查询，params 含分页参数
	 * @param params
	 * @return
	 */
	IPage<CptAcceptanceReportEntity> queryPage(Map<String, Object> params);

	/**
	 * @descr 分页查询，params 含分页参数
	 * @param params
	 * @return
	 */
	CptAcceptanceReportEntity queryOne(Map<String, Object> params);


	/**
	 * @descr 分页查询，params 含分页参数
	 * @param params
	 * @return
	 */
	List<CptAcceptanceReportEntity> queryList(Map<String, Object> params);

	/**
	 * 生成 竣工项目审查(后续盖章)
	 * @param execution
	 */
	Map<String, Object> createJgxmscFile(CptAcceptanceEntity cptAcceptanceEntity, String newFileName);

	/**
	 * 下载 竣工项目审查 文件流
	 * @param execution
	 */
	void downloadJgxmscFile(String cptId, HttpServletRequest request, HttpServletResponse response, String attCode);
	
	/**
	 * 盖章-竣工项目审查 文件
	 * @param request
	 * @param cptId
	 */
	void signJgxmscFile(HttpServletRequest request, String cptId, String attCode, String FileName);
	
	/**
	 * 下载 工程质量监督报告 文件
	 * @param execution
	 */
	void downloadSignJgxmscFile(String cptId, HttpServletRequest request, HttpServletResponse response, String attCode);
	
	

	/**
	 * 生成 单位工程质量评定(后续盖章)
	 * @param execution
	 */
	Map<String, Object> createDwgczlpdFile(CptAcceptanceReportQualityEntity cptAcceptanceReportQualityEntity, String newFileName);

	/**
	 * 下载单位工程质量评定 文件流
	 * @param execution
	 */
	void downloadDwgczlpdFile(String cptId, HttpServletRequest request, HttpServletResponse response, String attCode);
	
	/**
	 * 盖章-单位工程质量评定 文件
	 * @param request
	 * @param cptId
	 */
	void signDwgczlpdFile(HttpServletRequest request, String cptId, String attCode, String FileName);
	
	/**
	 * 下载单位工程质量评定 文件
	 * @param execution
	 */
	void downloadSignDwgczlpdFile(String cptId, HttpServletRequest request, HttpServletResponse response, String attCode);

	/**
	 * 下载单位工程质量评定 文件
	 * @param execution
	 */
	void downloadGcjgysbgFile(String cptId, HttpServletRequest request, HttpServletResponse response, String attCode, String rebuildFlag);
	
	/**
	 * @descr 查询项目信息
	 * @param params
	 * @return
	 */
	ProjectInofDto prjInfo(String cptId);
}
